#ifndef __MYFUNC_H_
#define __MYFUNC_H_
#define _GNU_SOURCE
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <sys/wait.h>
#include <sys/ipc.h>
#include <sys/mman.h>
#include <grp.h>
#include <sys/sem.h>
#include <sys/shm.h>
#include <pwd.h>
#include <sys/types.h>
#include <ctype.h>
#include <unistd.h>
#include <signal.h>
#include <sys/stat.h>
#include <dirent.h>
#include <time.h>
#include <sys/msg.h>
#include <sys/time.h>
#include <fcntl.h>
#include <pthread.h>
#include <sys/socket.h>
#include <fcntl.h>
#include <sys/epoll.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <shadow.h>

#define ARGS_CHECK(argc, num)            \
{if(argc != num)                         \
    {                                    \
        fprintf(stderr, "args error!\n"); \
        return -1;                       \
    }                                    \
}                                        

#define ERROR_CHECK(ret, num, msg)      \
{                                       \
    if(ret == num) {                    \
        perror(msg);                    \
        return -1;                      \
    }                                   \
}

#define THREAD_ERROR_CHECK(ret, msg)                    \
{                                                       \
    if(ret != 0) {                                      \
        fprintf(stderr, "%s:%s\n", msg,strerror(ret));  \
        return -1;                                      \
    }                                                   \
}

#endif
